package cn.itsource.service;

import cn.itsource.pojo.domain.Order;
import cn.itsource.pojo.dto.CheckOrderDto;
import cn.itsource.pojo.dto.ConfirmOrderDto;
import cn.itsource.pojo.dto.DriverEverytimeLocation;
import cn.itsource.pojo.dto.OrderDto;
import cn.itsource.result.JSONResult;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 订单表 服务类
 * </p>
 *
 * @author tt
 * @since 2024-09-20
 */
public interface IOrderService extends IService<Order> {

    JSONResult save(OrderDto orderDto);

    JSONResult getMQMessage();

    JSONResult cancelOrder(String orderId);

    JSONResult killOrderHandle(String orderId);

    JSONResult driverCancelOrder(String orderId);

    JSONResult checkRunningOrder(Integer userType);

    JSONResult arriveStartPlace(String orderNO);

    JSONResult startDrivingHandle(String orderNO);

    JSONResult endDrivingHandle(String orderNO);

    JSONResult saveDriverLocation(DriverEverytimeLocation driverEverytimeLocation);

    JSONResult pullDriverLocation(String orderNO);

    JSONResult confirmOrder(ConfirmOrderDto confirmOrderDto);
}
